Nanodegree key: nd082
Version: 1.0.0
Locale: en-us
This program teaches students how to deploy, test, and monitor cloud applications on Azure, thereby preparing learners for success on Microsoft’s AZ-400 DevOps Engineer Expert certification.
Content
Part 01 : Welcome to the DevOps Engineer for Microsoft Azure Program
Welcome to Udacity! We're excited to share more about your nanodegree and start this journey with you!
In this course, you will learn more about the pre-requisites, structure of the program, and getting started!
-
Module 01: Welcome to the DevOps Engineer for Microsoft Azure Program
-
Lesson 01: DevOps Engineer for Microsoft Azure Program Introduction
Welcome to the DevOps Engineer for Microsoft Azure Nanodegree program! In this lesson, you will learn more about the structure of the program and meet your instructors.
-
Lesson 02: Knowledge, Community, and Careers
You are starting a challenging but rewarding journey! Take 5 minutes to read how to get help with projects and content.
-
Lesson 03: Getting Started: Azure Setup
Instructions to set up an Azure Account for this program
-
Part 02 : Azure Infrastructure Operations
In modern deployments, automated deployment and management of cloud infrastructure is crucial for ensuring the high uptimes that customers expect. Understand the DevOps lifecycle and the basics of infrastructure management in Microsoft Azure. Learn about cloud security best practices to keep infrastructure secure. Leverage modern technologies to create robust and repeatable deployments in Microsoft Azure.
-
Module 01: Azure Infrastructure Operations
-
Lesson 01: Introduction to DevOps & Infrastructure
In this lesson, we'll get an overview of the course and look at some of the fundamental concepts we need to understand why DevOps and infrastructure are so important.
- Concept 01: Meet Your Instructor
- Concept 02: Tools, Environment, and Dependencies
- Concept 03: Course Overview
- Concept 04: What You'll Build
- Concept 05: Lesson Overview
- Concept 06: Software Development Lifecycle
- Concept 07: History & Principles of DevOps
- Concept 08: Configuration Management
- Concept 09: Writing Commit Messages
- Concept 10: Exercise: Writing READMEs
- Concept 11: Identifying Customers
- Concept 12: Gotchas
- Concept 13: Lesson Review
-
Lesson 02: Azure Infrastructure Fundamentals
In this lesson we'll cover Azure infrastructure fundamentals, including IaaS resource types, deploying virtual machines, and virtual networking and load balancing.
- Concept 01: Lesson Overview
- Concept 02: Intro to Infrastructure as a Service
- Concept 03: Deploying Your First Resource
- Concept 04: Intro to Virtual Networking
- Concept 05: Intro to Load Balancing
- Concept 06: Azure Monitor
- Concept 07: Azure Active Directory
- Concept 08: Tour of Azure AD
- Concept 09: Azure Command Line Interface
- Concept 10: Edge Case: Using the Portal vs. CLI
- Concept 11: Lesson Review
-
Lesson 03: Azure Security Best Practices
This lesson is all about Azure security, including using Azure Security Center, writing Azure security policies, configuring network security groups, and applying security best practices.
- Concept 01: Lesson Overview
- Concept 02: Developing Security Intution
- Concept 03: Tour of Azure Security Center
- Concept 04: Intro to Azure Policy
- Concept 05: Creating a Custom Policy
- Concept 06: Network Security Groups
- Concept 07: Azure Security Best Practices
- Concept 08: Edge Case: Policy Exclusions
- Concept 09: Lesson Review
-
Lesson 04: Infrastructure as Code
In this lesson, we'll learn how to write Infrastructure as Code. We'll learn how to use Packer to deploy image templates, and how to use Terraform to deploy resources using infrastructure as code.
- Concept 01: Lesson Overview
- Concept 02: Intro to Infrastructure as Code
- Concept 03: Intro to Terraform
- Concept 04: Writing Terraform Configurations
- Concept 05: Deploying Resources with Terraform
- Concept 06: Intermediate Terraform Concepts
- Concept 07: Intro to Packer
- Concept 08: Components of a Packer Template
- Concept 09: Deploying an Image with Packer
- Concept 10: Gotchas
- Concept 11: Lesson Review
- Concept 12: Course Review
-
Lesson 05: Deploying a Web Server in Azure
In your final project, you'll create infrastructure as code—in the form of a Terraform template—in order to deploy a website with a load balancer.
-
Part 03 : Agile Development with Azure
Automated Deployment of high quality software using DevOps principles is a critical skill in the cloud era.
Master the theory and practice of Agile Project management with hands-on examples. Execute a Python centric Continuous Integration strategy that uses testing best practices, including open source code quality tools such as pylint and pytest. Couple Infrastructure-as-Code (IaC) with Continuous Delivery using Azure Pipelines to streamline the deployment of applications to Azure.
-
Module 01: Agile Development with Azure
-
Lesson 01: Introduction to Agile Development with Azure
In this lesson, we'll consider the underlying problems that Agile solves for and introduce you to some of the core concepts and tools underlying the Agile approach.
- Concept 01: Meet Your Instructor
- Concept 02: Course Overview
- Concept 03: What You'll Build
- Concept 04: Lesson Overview
- Concept 05: Core Principles of Agile
- Concept 06: Demo Culture
- Concept 07: Business Value
- Concept 08: Gotchas
- Concept 09: Growing a Plant vs. Laying Concrete
- Concept 10: The Five Why's of Process Complexity
- Concept 11: Kaizen
- Concept 12: Lesson Review
-
Lesson 02: Agile Planning and Communication
In this lesson, we'll see how we can use an Agile approach to help ensure we're working on what matters—and avoiding typical problems that get in the way of software development.
- Concept 01: Lesson Overview
- Concept 02: Why Use Agile Planning?
- Concept 03: Culture and Authority
- Concept 04: Teamwork
- Concept 05: Exercise: Teamwork
- Concept 06: Optimizing for Software Engineer Creativity
- Concept 07: Developing Software Team KPIs
- Concept 08: Planning with Spreadsheets
- Concept 09: Exercise: Spreadsheet Planning
- Concept 10: Status Tracking with Trello
- Concept 11: Exercise: Set Up Trello
- Concept 12: The Purpose of Sprints
- Concept 13: Effective Technical Communication
- Concept 14: Technical Discussions as Active Learning
- Concept 15: Weekly Demos and Deploys
- Concept 16: Agile Edge Cases
- Concept 17: Lesson Review
-
Lesson 03: Continuous Integration
In this lesson, we'll look at how to use Azure to do Continuous Integration (CI). We'll walk through how to set up Azure Cloud Shell and evaluate different build server options.
- Concept 01: Lesson Overview
- Concept 02: Does Anything Work?
- Concept 03: Setting Up Azure Cloud Shell
- Concept 04: Exercise: Setting Up Azure Cloud Shell
- Concept 05: Makefiles for Build Automation
- Concept 06: Exercise: Creating a Makefile
- Concept 07: Exercise: Using Virtual Environments
- Concept 08: Using Python pip
- Concept 09: Exercise: Using pip with Make
- Concept 10: Exercise: Creating a Click Tool
- Concept 11: Creating Test Code
- Concept 12: Exercise: Creating Test Code
- Concept 13: Exercise: Creating a CI/CD Pipelines
- Concept 14: Exercise: Using GitHub Actions
- Concept 15: Evaluating Build Server Options
- Concept 16: Lesson Review
-
Lesson 04: Continuous Delivery
In this lesson, we'll look at how to leverage infrastructure automation in your development lifecycle so that we can achieve Continuous Delivery (CD).
- Concept 01: Lesson Overview
- Concept 02: Ruthless Automation
- Concept 03: GitOps and the Big Picture
- Concept 04: Using Infrastructure Automation
- Concept 05: Intro to the Azure CLI
- Concept 06: Exercise: Azure Shell Setup
- Concept 07: Azure Pipelines for Automation
- Concept 08: Exercise: Set Up Azure Pipelines
- Concept 09: Exercise: Build an Azure Pipeline
- Concept 10: Effective Microservices Strategy
- Concept 11: Exercise: Run a ML Microservice
- Concept 12: Creating Effective Alerts
- Concept 13: Exercise: Creating an Alert
- Concept 14: CD Edge Cases
- Concept 15: Lesson Review
- Concept 16: Course Review
-
Lesson 05: Building a CI/CD Pipeline
In your final project, you'll integrate an Azure Cloud Shell environment and use it to build, test, deploy, and operationalize a Machine Learning project. This project uses Flask and sklearn.
-
Part 04 : Ensuring Quality Releases (Quality Assurance)
Applications that have been built and released into the cloud need to be evaluated to ensure proper performance. Test cloud-based application performance and functionality within the pipeline itself, as well as after it has been deployed by using different types of test suites such as Selenium and Postman. Exercise those test suites against a variety of endpoints, including a sample eCommerce UI, and REST APIs. Build a systemic application monitoring process based on alert triggers in Azure Monitor and custom log files in Azure Log Analytics.
-
Module 01: Ensuring Quality Releases (Quality Assurance)
-
Lesson 01: Intro to Ensuring Quality Releases
Course Overview
- Concept 01: Lesson Outline
- Concept 02: Meet Your Instructor
- Concept 03: Prerequisites
- Concept 04: Consistency Is Key
- Concept 05: Business Stakeholders
- Concept 06: Migration of DevOps to the Cloud
- Concept 07: Course Outline
- Concept 08: Tools, Environment & Dependencies
- Concept 09: Project: Ensuring Quality Releases
- Concept 10: Good Luck!
-
Lesson 02: Creating and Deploying Azure Cloud Infrastructure
In this lesson, we will learn to use Terraform to deploy an Azure Resource and a CI/CD pipeline to execute an automated test.
- Concept 01: Lesson Overview
- Concept 02: Big Picture
- Concept 03: Intro to Ensuring Quality
- Concept 04: Create Azure AppService with Terraform
- Concept 05: Quizzes: Create Azure AppService
- Concept 06: Cost Management in Azure
- Concept 07: Exercise: Create Azure AppService with Terraform
- Concept 08: Exercise Solution: Create Azure AppService
- Concept 09: Creating & Executing Automated Testing Tasks
- Concept 10: Quizzes: Automated Testing Tasks
- Concept 11: Exercise: Automated Testing Task
- Concept 12: Exercise Solution: Automated Testing Task
- Concept 13: When Not to Use: IaC & Automated Testing in CI/CD
- Concept 14: Glossary of Key Terms
- Concept 15: Lesson Conclusion
-
Lesson 03: Performance Testing
In this lesson, you will learn how to create a performance test suite and use JMeter to execute it.
- Concept 01: Lesson Overview
- Concept 02: Big Picture
- Concept 03: Intro to Performance Testing
- Concept 04: Intro to JMeter
- Concept 05: Practice with JMeter
- Concept 06: Exercise Solution: JMeter
- Concept 07: Creating a Performance Test Suite
- Concept 08: Quizzes: Performance Test Suite
- Concept 09: Exercise: Create Performance Test Suite
- Concept 10: Exercise Solution: Performance Test Suite
- Concept 11: Add Variables and Reporting
- Concept 12: Quizzes: Adding Variables & Reporting
- Concept 13: Exercise: Add Variables & Reporting
- Concept 14: Exercise Solution: Add Variables & Reporting
- Concept 15: When Not to Use Performance Testing
- Concept 16: Glossary of Key Terms
- Concept 17: Lesson Conclusion
-
Lesson 04: Functional UI Testing with Selenium
In this lesson you will learn how to use Selenium to write automated functional UI tests.
- Concept 01: Lesson Overview
- Concept 02: Big Picture
- Concept 03: Intro to Functional UI Testing
- Concept 04: Intro to Selenium
- Concept 05: Quizzes: Selenium Basics
- Concept 06: Exercise: Selenium Basics
- Concept 07: Exercise Solution: Selenium
- Concept 08: Finding CSS Selectors
- Concept 09: Quizzes: Finding CSS Selectors
- Concept 10: Exercise: Finding CSS Selectors
- Concept 11: Exercise Solution: CSS Selectors
- Concept 12: Writing Value-Added UI tests
- Concept 13: Quizzes: Value-Added UI tests
- Concept 14: Exercise: Value-Added UI tests
- Concept 15: Exercise Solution: UI Tests
- Concept 16: Fragility in UI Testing
- Concept 17: Glossary of Key Terms
- Concept 18: Lesson Conclusion
-
Lesson 05: Integration Testing with Postman
In this lesson, you will learn how to use Postman to write automated integration tests.
- Concept 01: Lesson Overview
- Concept 02: Big Picture
- Concept 03: Intro to Integration Testing
- Concept 04: Intro to Postman
- Concept 05: Quizzes: Postman
- Concept 06: Exercise: Using Postman
- Concept 07: Exercise Solution: Postman
- Concept 08: Set up Environment and Variables
- Concept 09: Quizzes: Environment & Variables
- Concept 10: Exercise: Environment & Variables
- Concept 11: Exercise Solution: Environment & Variables
- Concept 12: Create Tests in Postman
- Concept 13: Quizzes: Create Tests in Postman
- Concept 14: Exercise: Create Tests in Postman
- Concept 15: Exercise Solution: Create Tests in Postman
- Concept 16: When Not to Use Automated API Testing
- Concept 17: Glossary of Key Terms
- Concept 18: Lesson Conclusion
-
Lesson 06: Azure Observability
In this lesson, you will learn how to configure an alert on an Azure resource and configure Azure Log Analytics to ingest a custom log file.
- Concept 01: Azure Observability
- Concept 02: Big Picture
- Concept 03: Intro to Observability
- Concept 04: Alerting with Azure Monitor
- Concept 05: Quizzes: Alerts with Azure Monitor
- Concept 06: Exercise: Alerts with Azure Monitor
- Concept 07: Exercise Solution: Alerts
- Concept 08: Azure Log Analytics
- Concept 09: Quizzes: Azure Log Analytics
- Concept 10: Exercise: Azure Log Analytics
- Concept 11: Exercise Solution: Log Analytics
- Concept 12: Trust your Observability Tool
- Concept 13: Glossary of Key Terms
- Concept 14: Lesson Conclusion
- Concept 15: Recap of Course
- Concept 16: Congratulations
-
Lesson 07: Ensuring Quality Releases Project
This is the end-of-course project, where you will have a chance to pull all the skills together as you would in the regular work of an Azure DevOps Engineer.
-
Part 05 : Career Services
The Careers team at Udacity is here to help you move forward in your career - whether it's finding a new job, exploring a new career path, or applying new skills to your current job.
-
Module 01: Career Services
-
Lesson 01: Take 30 Min to Improve your LinkedIn
Find your next job or connect with industry peers on LinkedIn. Ensure your profile attracts relevant leads that will grow your professional network.
- Concept 01: Get Opportunities with LinkedIn
- Concept 02: Use Your Story to Stand Out
- Concept 03: Why Use an Elevator Pitch
- Concept 04: Create Your Elevator Pitch
- Concept 05: Use Your Elevator Pitch on LinkedIn
- Concept 06: Create Your Profile With SEO In Mind
- Concept 07: Profile Essentials
- Concept 08: Work Experiences & Accomplishments
- Concept 09: Build and Strengthen Your Network
- Concept 10: Reaching Out on LinkedIn
- Concept 11: Boost Your Visibility
- Concept 12: Up Next
-
Lesson 02: Optimize Your GitHub Profile
Other professionals are collaborating on GitHub and growing their network. Submit your profile to ensure your profile is on par with leaders in your field.
- Concept 01: Prove Your Skills With GitHub
- Concept 02: Introduction
- Concept 03: GitHub profile important items
- Concept 04: Good GitHub repository
- Concept 05: Interview with Art - Part 1
- Concept 06: Identify fixes for example “bad” profile
- Concept 07: Quick Fixes #1
- Concept 08: Quick Fixes #2
- Concept 09: Writing READMEs with Walter
- Concept 10: Interview with Art - Part 2
- Concept 11: Commit messages best practices
- Concept 12: Reflect on your commit messages
- Concept 13: Participating in open source projects
- Concept 14: Interview with Art - Part 3
- Concept 15: Participating in open source projects 2
- Concept 16: Starring interesting repositories
- Concept 17: Next Steps
-
Part 06 : Next Steps
In this part, you'll find info about registering for an AZ-400 Certification exam.
-
Module 01: Next Steps
-
Lesson 01: Next Steps
In this lesson, you'll find info about registering for an AZ-400 Certification exam.
-